The internet is a collection of networks that are interconnected logically as a single, large, virtual network. Messages between computers are exchanged by using packet switching. Networks can communicate with one another because they all use a protocol. Protocols are formal descriptions of messages to be exchanged and of rules to be followed in order for two or more systems to exchange information in a manner that all parties will understand.
Internet Protocol (IP) specifies the format of IP packet headers as they travel through the network, performs routing functions and selects the transmission path on which data will be sent. Routers utilize ports and addresses in routing tables to send data packets or cells through the network from node to node. IP handles packet forwarding and transporting of datagrams across a network.
With packet forwarding, computers can send a packet on to the next appropriate network component, based on the address in the packet's header. IP defines the basic unit of data transfer, the datagram or the packet, and it also defines the format of IP packet headers as they travel across the internet.
Every computer on the internet has a unique address. The entire datagram or packet has four entities—the payload field, the next protocol field, the IP field and the layer 2 field. Datagram or packet refers to the combination of the payload, the next protocol field and the IP address.
IP specifies the requirements to route, store and forward data among hosts on the network. IP functions at Layer 3, the network layer, and it provides several services, including host addressing, error notification, fragmentation and reassembly, routing, and packet timeout. The Layer 4 protocol, usually TCP or UDP, presents the data to IP in order to provide basic host-to-host communication. IP then attaches to the packet, in a protocol header, the address from which the data comes and the address of the system to which it is going.
Internet Group Management Protocol (IGMP) is a Layer 3, network layer, protocol whose primary purpose is to allow internet hosts to participate in multicasting. The IGMP standard describes the basics of multicasting IP traffic, including the format of multicast IP addresses, multicast Ethernet encapsulation, and the concept of a host group (a set of hosts interested in traffic for a particular multicast address). IGMP enables a router to determine which host groups have members on a given network segment, but IGMP does not address the exchange of multicast packets between routers.
IGMPv1 was the first widely-deployed version of IGMP. IGMPv2 is an upgrade from the first version of IGMP. IGMPv2 allows group membership termination to be quickly reported to the routing protocol. IGMPv3 is a further upgrade from IGMPv2. IGMPv3 has the ability for a system to report interest in receiving packets only from specific source addresses, or from all but specific source addresses, sent to a particular multicast address. That information may be used by multicast routing protocols to avoid delivering multicast packets from specific sources to networks where there are no interested receivers.
IGMPv3 hosts and routers interoperate with hosts and routers that have not yet been upgraded to IGMPv3. This compatibility is maintained by hosts and routers taking appropriate actions depending on the versions of IGMP operating on hosts and routers within a network. If any older versions of IGMP are present on a Local Area Network (LAN) segment (router interface), the IGMP querier on the router must use the lowest version of IGMP present on the LAN segment.
Multicasting involves sending information from one transmitter to multiple receivers. With multicast, an individual only needs one IP connection to do a videoconferencing session between one city and another city having, for example, four remote offices rather than needing four separate IP connections. A multicast router located in the first city enfolds IP packets in special multicast packets and forwards those packets to a multicast router in the second city which removes the IP packets, replicates them, and then distributes them to the four locations in the second city. In IP networks, the IP multicast protocol involves the use of a special group of addresses known as multicast addresses. Each destination address identifies a group of receivers to which all information is replicated.
The current generation of IP is called IP version 4 (IPv4). IPv4 addresses have two parts: the network ID and the host ID. Under IPv4, there are five classes that support different numbers of networks and hosts. The fourth class belongs to the multicast backbone.
The multicast backbone conserves bandwidth over a distance, relieves congestion on transit links, and makes it possible to address a large population in a single multicast. The first octet of the multicast addresses starts at 224 and runs through 239.
The present invention is directed to the problem of limited IP multicast addresses. IPv4 provides limited addressing space for multicast (224.0.0.0<G<239.255.255.255) for a total of 268 million multicast group addresses.
Source Specific Multicast (SSM) removes the limited address space restriction by allowing each source with IP address (S) to use the entire SSM space, such that each combination of (S, G) represents a different multicast group. However, the problem of limited address space persists in the majority of cases where IGMPv2 is used with SSM and SSM translation from (*, G0) to (S0, G0).
There is no prior art directly targeted towards solving the same problem. SSM translations allow the use of IGMPv2 receivers with a SSM IP network by having the receiver IGMP querier translate (*, G0), IGMPv2 queries, into (S0, G0), IGMPv3 queries, before processing. However, the group address is never translated with SSM translations.
If two channels (*, G1) and (*, G2) are joined by an IGMPv2 receiver, the SSM translations at the querier translates these groups into two SSM groups with (S1, G1) and (S2, G2). There is no flexibility in translating the group address of the (S, G) multicast channel. The rapid rollout of IPTV service by network operators is accelerating the exhaustion of IP multicast address space, in the majority of cases where IGMPv2 receivers are used.
Hence, there is a need in the art for a convenient to implement, reliable, inexpensive and efficient method and device for translating SM addresses (*, G1) and (*, G2) to configurable SSM addresses (S0, G0).